.class final Lnbisdk/hb;
.super Ljava/lang/Object;


# static fields
.field private static final eo:[I


# instance fields
.field private kj:[I

.field private kk:I

.field private kl:I

.field private km:I

.field private kn:I

.field private ko:I

.field private kp:B

.field private kq:B

.field private kr:[I

.field private ks:I

.field private kt:[I

.field private ku:I

.field private len:I

.field private mode:I


# direct methods
.method static constructor <clinit>()V
    .locals 1

    const/16 v0, 0x11

    new-array v0, v0, [I

    fill-array-data v0, :array_0

    sput-object v0, Lnbisdk/hb;->eo:[I

    return-void

    :array_0
    .array-data 0x4
        0x0t 0x0t 0x0t 0x0t
        0x1t 0x0t 0x0t 0x0t
        0x3t 0x0t 0x0t 0x0t
        0x7t 0x0t 0x0t 0x0t
        0xft 0x0t 0x0t 0x0t
        0x1ft 0x0t 0x0t 0x0t
        0x3ft 0x0t 0x0t 0x0t
        0x7ft 0x0t 0x0t 0x0t
        0xfft 0x0t 0x0t 0x0t
        0xfft 0x1t 0x0t 0x0t
        0xfft 0x3t 0x0t 0x0t
        0xfft 0x7t 0x0t 0x0t
        0xfft 0xft 0x0t 0x0t
        0xfft 0x1ft 0x0t 0x0t
        0xfft 0x3ft 0x0t 0x0t
        0xfft 0x7ft 0x0t 0x0t
        0xfft 0xfft 0x0t 0x0t
    .end array-data
.end method

.method constructor <init>()V
    .locals 1

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    const/4 v0, 0x0

    iput v0, p0, Lnbisdk/hb;->kk:I

    return-void
.end method


# virtual methods
.method final a(Lnbisdk/cv;Lnbisdk/bm;I)I
    .locals 26

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ex:I

    move v7, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ew:I

    move v8, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v9, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    if-ge v9, v10, :cond_0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v10, v0

    sub-int/2addr v10, v9

    const/4 v11, 0x1

    sub-int/2addr v10, v11

    :goto_0
    move/from16 v11, p3

    move/from16 v24, v9

    move v9, v8

    move v8, v5

    move v5, v10

    move v10, v7

    move v7, v6

    move/from16 v6, v24

    :goto_1
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->mode:I

    move v12, v0

    packed-switch v12, :pswitch_data_0

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v11, v5

    add-long/2addr v9, v11

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x2

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    :goto_2
    return v5

    :cond_0
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v10, v0

    sub-int/2addr v10, v9

    goto :goto_0

    :pswitch_0
    const/16 v12, 0x102

    if-lt v5, v12, :cond_19

    const/16 v12, 0xa

    if-lt v7, v12, :cond_19

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v11, v5

    add-long/2addr v9, v11

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p0

    iget-byte v0, v0, Lnbisdk/hb;->kp:B

    move v5, v0

    move-object/from16 v0, p0

    iget-byte v0, v0, Lnbisdk/hb;->kq:B

    move v6, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kr:[I

    move-object v7, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ks:I

    move v8, v0

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kt:[I

    move-object v9, v0

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ku:I

    move v10, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v11, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v12, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ex:I

    move v13, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ew:I

    move v14, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v15, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move/from16 v16, v0

    move v0, v15

    move/from16 v1, v16

    if-ge v0, v1, :cond_2

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move/from16 v16, v0

    sub-int v16, v16, v15

    const/16 v17, 0x1

    sub-int v16, v16, v17

    :goto_3
    sget-object v17, Lnbisdk/hb;->eo:[I

    aget v5, v17, v5

    sget-object v17, Lnbisdk/hb;->eo:[I

    aget v6, v17, v6

    move/from16 v24, v16

    move/from16 v16, v13

    move v13, v12

    move v12, v15

    move v15, v14

    move v14, v11

    move/from16 v11, v24

    :cond_1
    :goto_4
    const/16 v17, 0x14

    move v0, v15

    move/from16 v1, v17

    if-ge v0, v1, :cond_3

    add-int/lit8 v13, v13, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object/from16 v17, v0

    add-int/lit8 v18, v14, 0x1

    aget-byte v14, v17, v14

    and-int/lit16 v14, v14, 0xff

    shl-int/2addr v14, v15

    or-int v14, v14, v16

    add-int/lit8 v15, v15, 0x8

    move/from16 v16, v14

    move/from16 v14, v18

    goto :goto_4

    :cond_2
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move/from16 v16, v0

    sub-int v16, v16, v15

    goto :goto_3

    :cond_3
    and-int v17, v16, v5

    add-int v18, v8, v17

    mul-int/lit8 v18, v18, 0x3

    aget v19, v7, v18

    if-nez v19, :cond_3e

    add-int/lit8 v17, v18, 0x1

    aget v17, v7, v17

    shr-int v16, v16, v17

    add-int/lit8 v17, v18, 0x1

    aget v17, v7, v17

    sub-int v15, v15, v17

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v17, v0

    add-int/lit8 v19, v12, 0x1

    add-int/lit8 v18, v18, 0x2

    aget v18, v7, v18

    move/from16 v0, v18

    int-to-byte v0, v0

    move/from16 v18, v0

    aput-byte v18, v17, v12

    add-int/lit8 v11, v11, -0x1

    move/from16 v12, v19

    :goto_5
    const/16 v17, 0x102

    move v0, v11

    move/from16 v1, v17

    if-lt v0, v1, :cond_4

    const/16 v17, 0xa

    move v0, v13

    move/from16 v1, v17

    if-ge v0, v1, :cond_1

    :cond_4
    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v5, v0

    sub-int/2addr v5, v13

    shr-int/lit8 v6, v15, 0x3

    if-ge v6, v5, :cond_5

    shr-int/lit8 v5, v15, 0x3

    :cond_5
    add-int v6, v13, v5

    sub-int v7, v14, v5

    shl-int/lit8 v5, v5, 0x3

    sub-int v5, v15, v5

    move/from16 v0, v16

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v6

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v8, v0

    sub-int v8, v7, v8

    int-to-long v8, v8

    add-long/2addr v5, v8

    move-wide v0, v5

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, 0x0

    :goto_6
    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v6, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v7, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ex:I

    move v8, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->ew:I

    move v9, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v10, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    if-ge v10, v11, :cond_16

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    sub-int/2addr v11, v10

    const/4 v12, 0x1

    sub-int/2addr v11, v12

    :goto_7
    if-eqz v5, :cond_18

    const/4 v12, 0x1

    if-ne v5, v12, :cond_17

    const/4 v12, 0x7

    :goto_8
    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    move/from16 v24, v11

    move v11, v5

    move/from16 v5, v24

    move/from16 v25, v6

    move v6, v10

    move v10, v8

    move/from16 v8, v25

    goto/16 :goto_1

    :cond_6
    move/from16 v24, v18

    move/from16 v18, v19

    move/from16 v19, v15

    move/from16 v15, v24

    :goto_9
    add-int/lit8 v20, v15, 0x1

    aget v20, v7, v20

    shr-int v17, v17, v20

    add-int/lit8 v20, v15, 0x1

    aget v20, v7, v20

    sub-int v16, v16, v20

    and-int/lit8 v20, v18, 0x10

    if-eqz v20, :cond_11

    and-int/lit8 v18, v18, 0xf

    add-int/lit8 v15, v15, 0x2

    aget v15, v7, v15

    sget-object v19, Lnbisdk/hb;->eo:[I

    aget v19, v19, v18

    and-int v19, v19, v17

    add-int v15, v15, v19

    shr-int v17, v17, v18

    sub-int v16, v16, v18

    :goto_a
    const/16 v18, 0xf

    move/from16 v0, v16

    move/from16 v1, v18

    if-ge v0, v1, :cond_7

    add-int/lit8 v13, v13, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object/from16 v18, v0

    add-int/lit8 v19, v14, 0x1

    aget-byte v14, v18, v14

    and-int/lit16 v14, v14, 0xff

    shl-int v14, v14, v16

    or-int v14, v14, v17

    add-int/lit8 v16, v16, 0x8

    move/from16 v17, v14

    move/from16 v14, v19

    goto :goto_a

    :cond_7
    and-int v18, v17, v6

    add-int v19, v10, v18

    mul-int/lit8 v19, v19, 0x3

    aget v20, v9, v19

    move/from16 v24, v19

    move/from16 v19, v20

    move/from16 v20, v18

    move/from16 v18, v17

    move/from16 v17, v16

    move/from16 v16, v24

    :goto_b
    add-int/lit8 v21, v16, 0x1

    aget v21, v9, v21

    shr-int v18, v18, v21

    add-int/lit8 v21, v16, 0x1

    aget v21, v9, v21

    sub-int v17, v17, v21

    and-int/lit8 v21, v19, 0x10

    if-eqz v21, :cond_e

    and-int/lit8 v19, v19, 0xf

    :goto_c
    move/from16 v0, v17

    move/from16 v1, v19

    if-ge v0, v1, :cond_8

    add-int/lit8 v13, v13, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object/from16 v20, v0

    add-int/lit8 v21, v14, 0x1

    aget-byte v14, v20, v14

    and-int/lit16 v14, v14, 0xff

    shl-int v14, v14, v17

    or-int v14, v14, v18

    add-int/lit8 v17, v17, 0x8

    move/from16 v18, v14

    move/from16 v14, v21

    goto :goto_c

    :cond_8
    add-int/lit8 v16, v16, 0x2

    aget v16, v9, v16

    sget-object v20, Lnbisdk/hb;->eo:[I

    aget v20, v20, v19

    and-int v20, v20, v18

    add-int v16, v16, v20

    shr-int v18, v18, v19

    sub-int v17, v17, v19

    sub-int/2addr v11, v15

    move v0, v12

    move/from16 v1, v16

    if-lt v0, v1, :cond_a

    sub-int v16, v12, v16

    sub-int v19, v12, v16

    if-lez v19, :cond_9

    const/16 v19, 0x2

    sub-int v20, v12, v16

    move/from16 v0, v19

    move/from16 v1, v20

    if-le v0, v1, :cond_9

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v19, v0

    add-int/lit8 v20, v12, 0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v21, v0

    add-int/lit8 v22, v16, 0x1

    aget-byte v16, v21, v16

    aput-byte v16, v19, v12

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object v12, v0

    add-int/lit8 v16, v20, 0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v19, v0

    add-int/lit8 v21, v22, 0x1

    aget-byte v19, v19, v22

    aput-byte v19, v12, v20

    add-int/lit8 v12, v15, -0x2

    move/from16 v15, v16

    move/from16 v16, v21

    :goto_d
    sub-int v19, v15, v16

    if-lez v19, :cond_d

    sub-int v19, v15, v16

    move v0, v12

    move/from16 v1, v19

    if-le v0, v1, :cond_d

    :goto_e
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v19, v0

    add-int/lit8 v20, v15, 0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v21, v0

    add-int/lit8 v22, v16, 0x1

    aget-byte v16, v21, v16

    aput-byte v16, v19, v15

    add-int/lit8 v12, v12, -0x1

    if-nez v12, :cond_3b

    move/from16 v12, v20

    move/from16 v15, v17

    move/from16 v16, v18

    goto/16 :goto_5

    :cond_9
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v19, v0

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v20, v0

    const/16 v21, 0x2

    move-object/from16 v0, v19

    move/from16 v1, v16

    move-object/from16 v2, v20

    move v3, v12

    move/from16 v4, v21

    invoke-static {v0, v1, v2, v3, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/lit8 v12, v12, 0x2

    add-int/lit8 v16, v16, 0x2

    add-int/lit8 v15, v15, -0x2

    move/from16 v24, v15

    move v15, v12

    move/from16 v12, v24

    goto :goto_d

    :cond_a
    sub-int v16, v12, v16

    :cond_b
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move/from16 v19, v0

    add-int v16, v16, v19

    if-ltz v16, :cond_b

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move/from16 v19, v0

    sub-int v19, v19, v16

    move v0, v15

    move/from16 v1, v19

    if-le v0, v1, :cond_3d

    sub-int v15, v15, v19

    sub-int v20, v12, v16

    if-lez v20, :cond_c

    sub-int v20, v12, v16

    move/from16 v0, v19

    move/from16 v1, v20

    if-le v0, v1, :cond_c

    move/from16 v24, v19

    move/from16 v19, v16

    move/from16 v16, v24

    :goto_f
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v20, v0

    add-int/lit8 v21, v12, 0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v22, v0

    add-int/lit8 v23, v19, 0x1

    aget-byte v19, v22, v19

    aput-byte v19, v20, v12

    add-int/lit8 v12, v16, -0x1

    if-nez v12, :cond_3c

    move/from16 v12, v21

    :goto_10
    const/16 v16, 0x0

    move/from16 v24, v15

    move v15, v12

    move/from16 v12, v24

    goto/16 :goto_d

    :cond_c
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v20, v0

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v21, v0

    move-object/from16 v0, v20

    move/from16 v1, v16

    move-object/from16 v2, v21

    move v3, v12

    move/from16 v4, v19

    invoke-static {v0, v1, v2, v3, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int v12, v12, v19

    goto :goto_10

    :cond_d
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v19, v0

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v20, v0

    move-object/from16 v0, v19

    move/from16 v1, v16

    move-object/from16 v2, v20

    move v3, v15

    move v4, v12

    invoke-static {v0, v1, v2, v3, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/2addr v12, v15

    move/from16 v15, v17

    move/from16 v16, v18

    goto/16 :goto_5

    :cond_e
    and-int/lit8 v21, v19, 0x40

    if-nez v21, :cond_f

    add-int/lit8 v16, v16, 0x2

    aget v16, v9, v16

    add-int v16, v16, v20

    sget-object v20, Lnbisdk/hb;->eo:[I

    aget v19, v20, v19

    and-int v19, v19, v18

    add-int v16, v16, v19

    add-int v19, v10, v16

    mul-int/lit8 v19, v19, 0x3

    aget v20, v9, v19

    move/from16 v24, v19

    move/from16 v19, v20

    move/from16 v20, v16

    move/from16 v16, v24

    goto/16 :goto_b

    :cond_f
    const-string v5, "invalid distance code"

    move-object v0, v5

    move-object/from16 v1, p2

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v5, v0

    sub-int/2addr v5, v13

    shr-int/lit8 v6, v17, 0x3

    if-ge v6, v5, :cond_10

    shr-int/lit8 v5, v17, 0x3

    :cond_10
    add-int v6, v13, v5

    sub-int v7, v14, v5

    shl-int/lit8 v5, v5, 0x3

    sub-int v5, v17, v5

    move/from16 v0, v18

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v6

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v8, v0

    sub-int v8, v7, v8

    int-to-long v8, v8

    add-long/2addr v5, v8

    move-wide v0, v5

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x3

    goto/16 :goto_6

    :cond_11
    and-int/lit8 v20, v18, 0x40

    if-nez v20, :cond_12

    add-int/lit8 v15, v15, 0x2

    aget v15, v7, v15

    add-int v15, v15, v19

    sget-object v19, Lnbisdk/hb;->eo:[I

    aget v18, v19, v18

    and-int v18, v18, v17

    add-int v15, v15, v18

    add-int v18, v8, v15

    mul-int/lit8 v18, v18, 0x3

    aget v19, v7, v18

    if-nez v19, :cond_6

    add-int/lit8 v15, v18, 0x1

    aget v15, v7, v15

    shr-int v15, v17, v15

    add-int/lit8 v17, v18, 0x1

    aget v17, v7, v17

    sub-int v16, v16, v17

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object/from16 v17, v0

    add-int/lit8 v19, v12, 0x1

    add-int/lit8 v18, v18, 0x2

    aget v18, v7, v18

    move/from16 v0, v18

    int-to-byte v0, v0

    move/from16 v18, v0

    aput-byte v18, v17, v12

    add-int/lit8 v11, v11, -0x1

    move/from16 v12, v19

    move/from16 v24, v16

    move/from16 v16, v15

    move/from16 v15, v24

    goto/16 :goto_5

    :cond_12
    and-int/lit8 v5, v18, 0x20

    if-eqz v5, :cond_14

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v5, v0

    sub-int/2addr v5, v13

    shr-int/lit8 v6, v16, 0x3

    if-ge v6, v5, :cond_13

    shr-int/lit8 v5, v16, 0x3

    :cond_13
    add-int v6, v13, v5

    sub-int v7, v14, v5

    shl-int/lit8 v5, v5, 0x3

    sub-int v5, v16, v5

    move/from16 v0, v17

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v6

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v8, v0

    sub-int v8, v7, v8

    int-to-long v8, v8

    add-long/2addr v5, v8

    move-wide v0, v5

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, 0x1

    goto/16 :goto_6

    :cond_14
    const-string v5, "invalid literal/length code"

    move-object v0, v5

    move-object/from16 v1, p2

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cL:I

    move v5, v0

    sub-int/2addr v5, v13

    shr-int/lit8 v6, v16, 0x3

    if-ge v6, v5, :cond_15

    shr-int/lit8 v5, v16, 0x3

    :cond_15
    add-int v6, v13, v5

    sub-int v7, v14, v5

    shl-int/lit8 v5, v5, 0x3

    sub-int v5, v16, v5

    move/from16 v0, v17

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v6

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v5, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v8, v0

    sub-int v8, v7, v8

    int-to-long v8, v8

    add-long/2addr v5, v8

    move-wide v0, v5

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x3

    goto/16 :goto_6

    :cond_16
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v11, v0

    sub-int/2addr v11, v10

    goto/16 :goto_7

    :cond_17
    const/16 v12, 0x9

    goto/16 :goto_8

    :cond_18
    move/from16 v24, v11

    move v11, v5

    move/from16 v5, v24

    move/from16 v25, v6

    move v6, v10

    move v10, v8

    move/from16 v8, v25

    :cond_19
    move-object/from16 v0, p0

    iget-byte v0, v0, Lnbisdk/hb;->kp:B

    move v12, v0

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kl:I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kr:[I

    move-object v12, v0

    move-object v0, v12

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/hb;->kj:[I

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ks:I

    move v12, v0

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kk:I

    const/4 v12, 0x1

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    :pswitch_1
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kl:I

    move v12, v0

    :goto_11
    if-ge v9, v12, :cond_1b

    if-eqz v7, :cond_1a

    const/4 v11, 0x0

    add-int/lit8 v7, v7, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v13, v0

    add-int/lit8 v14, v8, 0x1

    aget-byte v8, v13, v8

    and-int/lit16 v8, v8, 0xff

    shl-int/2addr v8, v9

    or-int/2addr v8, v10

    add-int/lit8 v9, v9, 0x8

    move v10, v8

    move v8, v14

    goto :goto_11

    :cond_1a
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v12, v5

    add-long/2addr v9, v12

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_1b
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kk:I

    move v13, v0

    sget-object v14, Lnbisdk/hb;->eo:[I

    aget v12, v14, v12

    and-int/2addr v12, v10

    add-int/2addr v12, v13

    mul-int/lit8 v12, v12, 0x3

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v14, v12, 0x1

    aget v13, v13, v14

    ushr-int/2addr v10, v13

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v14, v12, 0x1

    aget v13, v13, v14

    sub-int/2addr v9, v13

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    aget v13, v13, v12

    if-nez v13, :cond_1c

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v12, v12, 0x2

    aget v12, v13, v12

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->km:I

    const/4 v12, 0x6

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    goto/16 :goto_1

    :cond_1c
    and-int/lit8 v14, v13, 0x10

    if-eqz v14, :cond_1d

    and-int/lit8 v13, v13, 0xf

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kn:I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v12, v12, 0x2

    aget v12, v13, v12

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->len:I

    const/4 v12, 0x2

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    goto/16 :goto_1

    :cond_1d
    and-int/lit8 v14, v13, 0x40

    if-nez v14, :cond_1e

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kl:I

    div-int/lit8 v13, v12, 0x3

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v14, v0

    add-int/lit8 v12, v12, 0x2

    aget v12, v14, v12

    add-int/2addr v12, v13

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kk:I

    goto/16 :goto_1

    :cond_1e
    and-int/lit8 v12, v13, 0x20

    if-eqz v12, :cond_1f

    const/4 v12, 0x7

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    goto/16 :goto_1

    :cond_1f
    const/16 v5, 0x9

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    const-string v5, "invalid literal/length code"

    move-object v0, v5

    move-object/from16 v1, p2

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v11, v5

    add-long/2addr v9, v11

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x3

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :pswitch_2
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kn:I

    move v12, v0

    :goto_12
    if-ge v9, v12, :cond_21

    if-eqz v7, :cond_20

    const/4 v11, 0x0

    add-int/lit8 v7, v7, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v13, v0

    add-int/lit8 v14, v8, 0x1

    aget-byte v8, v13, v8

    and-int/lit16 v8, v8, 0xff

    shl-int/2addr v8, v9

    or-int/2addr v8, v10

    add-int/lit8 v9, v9, 0x8

    move v10, v8

    move v8, v14

    goto :goto_12

    :cond_20
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v12, v5

    add-long/2addr v9, v12

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_21
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->len:I

    move v13, v0

    sget-object v14, Lnbisdk/hb;->eo:[I

    aget v14, v14, v12

    and-int/2addr v14, v10

    add-int/2addr v13, v14

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->len:I

    shr-int/2addr v10, v12

    sub-int/2addr v9, v12

    move-object/from16 v0, p0

    iget-byte v0, v0, Lnbisdk/hb;->kq:B

    move v12, v0

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kl:I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kt:[I

    move-object v12, v0

    move-object v0, v12

    move-object/from16 v1, p0

    iput-object v0, v1, Lnbisdk/hb;->kj:[I

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ku:I

    move v12, v0

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kk:I

    const/4 v12, 0x3

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    :pswitch_3
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kl:I

    move v12, v0

    :goto_13
    if-ge v9, v12, :cond_23

    if-eqz v7, :cond_22

    const/4 v11, 0x0

    add-int/lit8 v7, v7, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v13, v0

    add-int/lit8 v14, v8, 0x1

    aget-byte v8, v13, v8

    and-int/lit16 v8, v8, 0xff

    shl-int/2addr v8, v9

    or-int/2addr v8, v10

    add-int/lit8 v9, v9, 0x8

    move v10, v8

    move v8, v14

    goto :goto_13

    :cond_22
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v12, v5

    add-long/2addr v9, v12

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_23
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kk:I

    move v13, v0

    sget-object v14, Lnbisdk/hb;->eo:[I

    aget v12, v14, v12

    and-int/2addr v12, v10

    add-int/2addr v12, v13

    mul-int/lit8 v12, v12, 0x3

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v14, v12, 0x1

    aget v13, v13, v14

    shr-int/2addr v10, v13

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v14, v12, 0x1

    aget v13, v13, v14

    sub-int/2addr v9, v13

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    aget v13, v13, v12

    and-int/lit8 v14, v13, 0x10

    if-eqz v14, :cond_24

    and-int/lit8 v13, v13, 0xf

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kn:I

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v13, v0

    add-int/lit8 v12, v12, 0x2

    aget v12, v13, v12

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->ko:I

    const/4 v12, 0x4

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    goto/16 :goto_1

    :cond_24
    and-int/lit8 v14, v13, 0x40

    if-nez v14, :cond_25

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kl:I

    div-int/lit8 v13, v12, 0x3

    move-object/from16 v0, p0

    iget-object v0, v0, Lnbisdk/hb;->kj:[I

    move-object v14, v0

    add-int/lit8 v12, v12, 0x2

    aget v12, v14, v12

    add-int/2addr v12, v13

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->kk:I

    goto/16 :goto_1

    :cond_25
    const/16 v5, 0x9

    move v0, v5

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    const-string v5, "invalid distance code"

    move-object v0, v5

    move-object/from16 v1, p2

    iput-object v0, v1, Lnbisdk/bm;->cR:Ljava/lang/String;

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v11, v5

    add-long/2addr v9, v11

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x3

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :pswitch_4
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->kn:I

    move v12, v0

    :goto_14
    if-ge v9, v12, :cond_27

    if-eqz v7, :cond_26

    const/4 v11, 0x0

    add-int/lit8 v7, v7, -0x1

    move-object/from16 v0, p2

    iget-object v0, v0, Lnbisdk/bm;->cJ:[B

    move-object v13, v0

    add-int/lit8 v14, v8, 0x1

    aget-byte v8, v13, v8

    and-int/lit16 v8, v8, 0xff

    shl-int/2addr v8, v9

    or-int/2addr v8, v10

    add-int/lit8 v9, v9, 0x8

    move v10, v8

    move v8, v14

    goto :goto_14

    :cond_26
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v12, v5

    add-long/2addr v9, v12

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_27
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ko:I

    move v13, v0

    sget-object v14, Lnbisdk/hb;->eo:[I

    aget v14, v14, v12

    and-int/2addr v14, v10

    add-int/2addr v13, v14

    move v0, v13

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->ko:I

    shr-int/2addr v10, v12

    sub-int/2addr v9, v12

    const/4 v12, 0x5

    move v0, v12

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    :pswitch_5
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->ko:I

    move v12, v0

    sub-int v12, v6, v12

    :goto_15
    if-gez v12, :cond_3a

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v13, v0

    add-int/2addr v12, v13

    goto :goto_15

    :cond_28
    move/from16 v24, v6

    move v6, v12

    move v12, v5

    move/from16 v5, v24

    :cond_29
    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object v13, v0

    add-int/lit8 v14, v6, 0x1

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object v15, v0

    add-int/lit8 v16, v11, 0x1

    aget-byte v11, v15, v11

    aput-byte v11, v13, v6

    add-int/lit8 v5, v5, -0x1

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v6, v0

    move/from16 v0, v16

    move v1, v6

    if-ne v0, v1, :cond_38

    const/4 v6, 0x0

    :goto_16
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->len:I

    move v11, v0

    const/4 v13, 0x1

    sub-int/2addr v11, v13

    move v0, v11

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->len:I

    move v11, v6

    move v6, v14

    :goto_17
    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->len:I

    move v13, v0

    if-eqz v13, :cond_2e

    if-nez v5, :cond_29

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v13, v0

    if-ne v6, v13, :cond_2a

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v13, v0

    if-eqz v13, :cond_2a

    const/4 v5, 0x0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v6, v0

    if-lez v6, :cond_2b

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v6, v0

    const/4 v13, 0x1

    sub-int/2addr v6, v13

    :goto_18
    move/from16 v24, v6

    move v6, v5

    move/from16 v5, v24

    :cond_2a
    if-nez v5, :cond_29

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v12

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    if-ge v6, v12, :cond_2c

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    sub-int/2addr v12, v6

    const/4 v13, 0x1

    sub-int/2addr v12, v13

    :goto_19
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v13, v0

    if-ne v6, v13, :cond_39

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v13, v0

    if-eqz v13, :cond_39

    const/4 v6, 0x0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    if-lez v12, :cond_2d

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    const/4 v13, 0x1

    sub-int/2addr v12, v13

    :goto_1a
    move/from16 v24, v12

    move v12, v6

    move/from16 v6, v24

    :goto_1b
    if-nez v6, :cond_28

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v9, v0

    sub-int v9, v8, v9

    int-to-long v9, v9

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v12

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_2b
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v6, v0

    goto/16 :goto_18

    :cond_2c
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v12, v0

    sub-int/2addr v12, v6

    goto :goto_19

    :cond_2d
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v12, v0

    goto :goto_1a

    :cond_2e
    const/4 v11, 0x0

    move v0, v11

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    move v11, v12

    goto/16 :goto_1

    :pswitch_6
    if-nez v5, :cond_34

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v12, v0

    if-ne v6, v12, :cond_2f

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    if-eqz v12, :cond_2f

    const/4 v5, 0x0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v6, v0

    if-lez v6, :cond_30

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v6, v0

    const/4 v12, 0x1

    sub-int/2addr v6, v12

    :goto_1c
    move/from16 v24, v6

    move v6, v5

    move/from16 v5, v24

    :cond_2f
    if-nez v5, :cond_34

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v6, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    if-ge v6, v11, :cond_31

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    sub-int/2addr v11, v6

    const/4 v12, 0x1

    sub-int/2addr v11, v12

    :goto_1d
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v12, v0

    if-ne v6, v12, :cond_37

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v12, v0

    if-eqz v12, :cond_37

    const/4 v6, 0x0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    if-lez v11, :cond_32

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    const/4 v12, 0x1

    sub-int/2addr v11, v12

    :goto_1e
    move/from16 v24, v11

    move v11, v6

    move/from16 v6, v24

    :goto_1f
    if-nez v6, :cond_33

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v6, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v9, v0

    sub-int v9, v8, v9

    int-to-long v9, v9

    add-long/2addr v6, v9

    move-wide v0, v6

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v11

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_30
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v6, v0

    goto/16 :goto_1c

    :cond_31
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v11, v0

    sub-int/2addr v11, v6

    goto :goto_1d

    :cond_32
    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eA:I

    move v11, v0

    goto :goto_1e

    :cond_33
    move v5, v6

    move v6, v11

    :cond_34
    const/4 v11, 0x0

    move-object/from16 v0, p1

    iget-object v0, v0, Lnbisdk/cv;->ez:[B

    move-object v12, v0

    add-int/lit8 v13, v6, 0x1

    move-object/from16 v0, p0

    iget v0, v0, Lnbisdk/hb;->km:I

    move v14, v0

    int-to-byte v14, v14

    aput-byte v14, v12, v6

    add-int/lit8 v5, v5, -0x1

    const/4 v6, 0x0

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    move v6, v13

    goto/16 :goto_1

    :pswitch_7
    const/4 v5, 0x7

    if-le v9, v5, :cond_36

    add-int/lit8 v5, v9, -0x8

    add-int/lit8 v7, v7, 0x1

    add-int/lit8 v8, v8, -0x1

    move/from16 v24, v7

    move v7, v8

    move v8, v5

    move/from16 v5, v24

    :goto_20
    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v11

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v6

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v9, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eB:I

    move v11, v0

    move-object/from16 v0, p1

    iget v0, v0, Lnbisdk/cv;->eC:I

    move v12, v0

    if-eq v11, v12, :cond_35

    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v8

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v5

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v10, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v7, v5

    int-to-long v12, v5

    add-long/2addr v10, v12

    move-wide v0, v10

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v6

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_35
    const/16 v6, 0x8

    move v0, v6

    move-object/from16 v1, p0

    iput v0, v1, Lnbisdk/hb;->mode:I

    move v6, v5

    move v5, v9

    :goto_21
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v8

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v6

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v8, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v6, v0

    sub-int v6, v7, v6

    int-to-long v10, v6

    add-long/2addr v8, v10

    move-wide v0, v8

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v5

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, 0x1

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :pswitch_8
    move v0, v10

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ex:I

    move v0, v9

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->ew:I

    move v0, v7

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cL:I

    move-object/from16 v0, p2

    iget-wide v0, v0, Lnbisdk/bm;->cM:J

    move-wide v9, v0

    move-object/from16 v0, p2

    iget v0, v0, Lnbisdk/bm;->cK:I

    move v5, v0

    sub-int v5, v8, v5

    int-to-long v11, v5

    add-long/2addr v9, v11

    move-wide v0, v9

    move-object/from16 v2, p2

    iput-wide v0, v2, Lnbisdk/bm;->cM:J

    move v0, v8

    move-object/from16 v1, p2

    iput v0, v1, Lnbisdk/bm;->cK:I

    move v0, v6

    move-object/from16 v1, p1

    iput v0, v1, Lnbisdk/cv;->eC:I

    const/4 v5, -0x3

    move-object/from16 v0, p1

    move-object/from16 v1, p2

    move v2, v5

    invoke-virtual {v0, v1, v2}, Lnbisdk/cv;->b(Lnbisdk/bm;I)I

    move-result v5

    goto/16 :goto_2

    :cond_36
    move v5, v7

    move v7, v8

    move v8, v9

    goto/16 :goto_20

    :cond_37
    move/from16 v24, v11

    move v11, v6

    move/from16 v6, v24

    goto/16 :goto_1f

    :cond_38
    move/from16 v6, v16

    goto/16 :goto_16

    :cond_39
    move/from16 v24, v12

    move v12, v6

    move/from16 v6, v24

    goto/16 :goto_1b

    :cond_3a
    move/from16 v24, v12

    move v12, v11

    move/from16 v11, v24

    goto/16 :goto_17

    :cond_3b
    move/from16 v15, v20

    move/from16 v16, v22

    goto/16 :goto_e

    :cond_3c
    move/from16 v16, v12

    move/from16 v19, v23

    move/from16 v12, v21

    goto/16 :goto_f

    :cond_3d
    move/from16 v24, v15

    move v15, v12

    move/from16 v12, v24

    goto/16 :goto_d

    :cond_3e
    move/from16 v24, v18

    move/from16 v18, v19

    move/from16 v19, v17

    move/from16 v17, v16

    move/from16 v16, v15

    move/from16 v15, v24

    goto/16 :goto_9

    :pswitch_9
    move v5, v6

    move v6, v7

    move v7, v8

    move v8, v9

    goto/16 :goto_21

    :pswitch_data_0
    .packed-switch 0x0
        :pswitch_0
        :pswitch_1
        :pswitch_2
        :pswitch_3
        :pswitch_4
        :pswitch_5
        :pswitch_6
        :pswitch_7
        :pswitch_9
        :pswitch_8
    .end packed-switch
.end method

.method final a(II[II[II)V
    .locals 1

    const/4 v0, 0x0

    iput v0, p0, Lnbisdk/hb;->mode:I

    int-to-byte v0, p1

    iput-byte v0, p0, Lnbisdk/hb;->kp:B

    int-to-byte v0, p2

    iput-byte v0, p0, Lnbisdk/hb;->kq:B

    iput-object p3, p0, Lnbisdk/hb;->kr:[I

    iput p4, p0, Lnbisdk/hb;->ks:I

    iput-object p5, p0, Lnbisdk/hb;->kt:[I

    iput p6, p0, Lnbisdk/hb;->ku:I

    const/4 v0, 0x0

    iput-object v0, p0, Lnbisdk/hb;->kj:[I

    return-void
.end method
